//封装的一些方法

export default {
    //生成动态路由
    generatorRouter(menuList: any) {
        const routers: any = []//动态路由
        //递归遍历函数
        const deep = (arr: any) => {
            while (arr.length) {//如果arr里面还有值
                let item = arr.pop();//取出最后一个值
                if (item.children && item.action) {//两个都存在说明是一级菜单
                    deep(item.children)//继续遍历出二级菜单
                } else if (item.children && !item.action) {//二级菜单
                    routers.push({//把二级菜单添加到routers数组中
                        name: item.component,
                        path: item.path,
                        component: () => import(`../views/ChlidPage/${item.component}.vue`),
                        meta: {
                            title: item.menuName,
                        }
                    })
                }
            }
        }
        //调用递归函数  深拷贝menuList
        deep(JSON.parse(JSON.stringify(menuList)))
        return routers//返回动态路由
    }
}